#ifndef __DOUBLELINKLIST_H_
#define __DOUBLELINKLIST_H_

#define ElementType int
#include <iostream>


class DoubleLinkList
{
public:
    DoubleLinkList();
    ~DoubleLinkList();

    void InsertTail(ElementType element);
    void InsertHead(ElementType element);
    void show();
    void ReserveShow();
    void Reserve();

private:

    struct Node//防止重名，彻底封装
    {
        ElementType data;
        Node *prev;
        Node *next;
    };
    Node * GetEnd();
    Node * CreatNode(ElementType element);
    Node * head;
    int size;

};

using DLlist = DoubleLinkList;


#endif